package com.heima.behavior.controller;

import com.heima.behavior.dto.ArticleBehaviorDto;
import com.heima.behavior.dto.BehaviorVo;
import com.heima.behavior.dto.EntryDto;
import com.heima.behavior.entity.ApBehaviorEntry;
import com.heima.behavior.service.IApBehaviorEntryService;
import com.heima.common.dto.ResponseResult;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * <p>
 * APP行为实体表,一个行为实体可能是用户或者设备，或者其它 前端控制器
 * </p>
 *
 * @author wsj
 * @since 2022-03-17
 */
@RestController
@RequestMapping("/api/v1/behavior_entry")
@Api(tags = "APP行为实体表,一个行为实体可能是用户或者设备，或者其它接口")
public class ApBehaviorEntryController{

    @Autowired
    private IApBehaviorEntryService apBehaviorEntryService;

    @ApiOperation(value = "保存行为实体")
    @PutMapping
    public ResponseResult<ApBehaviorEntry> saveEntry(@RequestBody EntryDto dto) {
        ApBehaviorEntry entry = apBehaviorEntryService.saveEntry(dto);
        return ResponseResult.okResult(entry);
    }

    /**
     * 获取当前用户当前文章行为
     * @param dto
     * @return
     */
    @PutMapping("/get")
    public ResponseResult<BehaviorVo> getBehavior(@RequestBody ArticleBehaviorDto dto) {
        return apBehaviorEntryService.getBehavior(dto);
    }
}
